
;(function(){
	var Test  = function(){
		
		//奖金问题
		this.money = function(){
			//保持销售额
			var sale= 1050000;cale=0;
			//依此判断每段多少钱 并计算奖金
			if(sale>1000000){
				cale = (sale-1000000) *0.01;
				sale = 1000000;
			}
			if(sale>600000){
				cale+=(sale-600000)*0.015;
				sale = 600000;
			}
			if(sale>400000){
				cale+=(sale-400000)*0.03;
				sale = 400000;
			}
			if(sale>200000){
				cale+=(sale-200000)*0.05;
				sale=200000;
			}
			if(sale>100000){
				cale+=(sale-100000)*0.075;
				sale=100000;
			}
			if(sale>0){
				cale+=sale*0.1;
				
			}
			document.write(cale);
			//输出
			
		}
		// 13题 如果开平方后的数 和1求余等于0 则为完全平方数
		this.ping = function(){
			var i=0;
			for(var num=1;num<=100000;num++){
				if((Math.sqrt(num+100))%1===0 && (Math.sqrt(num+268))%1===0){
					console.log(num);
				}
			}
		}
		//素数
		this.su=function(){
			for(var num=101;num<=300;num++){
				for(var a=2,m=0;a<num;a++){  //m是 不是素数的个数 如果这个数为0，则就是素数
					if(num%a===0){
						
						m++;
						break;
					}
				}
				if(m===0){
					document.write(num+"<br/>");
				}
			}
		}
		// 14题 判断今年是第几天
		this.day = function(){
		//输入年月日
		var year=2018,month=6,date=8,day=0;
		//循环 退出条件 ：月份-1
		for(i=1;i<month;i++){
			//判断如果是大月加31天
			if(i==1|| i==3 ||i==5 ||i==7 ||i==8||i==10||i==12){
				day+=31;
				//如果是小月+30
			}else if(i==4||i==6||i==9||i==11){
				day+=30;
			}else{
			//如果是2月
				if((year%4===0&&year%100!==0)||year%400===0){
					day+=29;
				}else{
					day+=28;
				}
				//如果是闰年+29
				//否则+28
			}
		}
		day+=date;
		document.write(day+"<br/>");
			
			
		//最后加上本月的日期
		//输出天数
		}
		this.day1 = function(){
		//输入年月日
		var year=1995,month=9,date=9,day=0;
		//循环 退出条件 ：月份-1
		for(i=1;i<month;i++){
			//判断如果是大月加31天
			switch(i){
				case 2:
					day+=((year%4===0&&year%100!==0)||year%400===0)?29:28;
					break;
				case 1:	case 3:case 5:case 7:case 8:case 10:case 12:
					day+=31;
					break;
				default:
					day+=30;
			}
			
		}
			
		//最后加上本月的日期
		//输出天数
		day+=date;
		document.write(day);
			
		
		}
		// 9*9口诀
		this.jue=function(){
			for(var i=1;i<=9;i++){
				for(var j=1;j<=i;j++){
					
					document.write(i+"*"+j+"="+(i*j)+"  ");
					
				}
				document.write("<br/>");
			}
		}
		//比较三个数大小
		this.sort=function(){
			//输入3个数
			var a=55 ,b=30, c=60;
			//a和b比较 大的放a
			if(a<b){
				var temp =a;
				a =b;
				b=temp;
			}
			// a和c比较 大的放在a(三个人中最大值)
			if(a<c){
				a=a+c;
				c=a-c;
				a=a-c;
			}
			//b和c比 大的放b
			if(b<c){
				var temp =b;
				b=c;
				c=temp;
			}
			console.log(a,b,c)
		}
		//2+22+222的和
		this.num= function(){
			var num=0;
			var star="2";
			for(i=1;i<=6;i++){
				document.write(star+"<br/>");
				num=num+parseInt(star);
				star+="2";
				
			}
			console.log(num);
		}
		//9*9口诀
		this.mult=function(){
			for(var row=1;row<10;row++){
				for(col=1;col<=row;col++){
					document.write(row+"x"+col+"="+(row*col)+"  ");
				}
				document.write('<br/>');
			}
			
		}
	}
	var Monkey=function(){
		//17.桃子问题
		this.eat=function(){
			var pear=1;
			for( var day=1;day<10;day++){	
					pear=(pear+1)*2;	
			}
			document.write(pear);
		}
		//递归求桃子数
		this.eat2 =function(i,pear){
			if(i<10){
				return this.eat2(++i,(pear+1)*2);
			}
			return pear;
		}
	}	
	//19. 菱形 20.
	var Fat = function(){
		this.yun=function(){
			var num1=1,num2=1,sum=0,count=0;
			for( var i=0;i<10;i++){
				sum=num1+num2;
				num1=num2;
				num2=sum;
				document.write(num1+'/'+num2+'  ');
				count+=(num1/num2);
			}
			document.write(count);
		}
		//菱形
		this.ling=function(){
			for(var row =0;row<4;row++){
				for(var col=0;col<3-row;col++){
					document.write("_ ");
				}
				for(var star=0;star<2*row+1;star++){
					document.write('*');
				}
				document.write('<br/>');
			}
			for(row=0;row<3;row++){
				for(var space=0;space<row+1;space++){
					document.write('_ ');
				}
				for(var star=0;star<6-space-row;star++){
					document.write('*');
					
				}
				document.write('<br/>');
			}
		}
	}
	//21.阶乘
	var Jie=function(){
		this.cheng=function(){
			var sum=0;
			for(i=1;i<=20;i++){
				var mm=1;
				for(var m=i;m>0;m--){
					mm*=m;
				}
				sum+=mm;           //sum+=this.cheng2(i,1)
			}
			console.log(sum);	
		}
		//递归法
		this.cheng2=function(i,ji){
			
			if(i>=1){
				return this.cheng2(--i,ji*(i+1));
			}
			return ji;
		}
	}
	

	var test = new Test();
		//test.money();
		//test.ping();
		//test.day();
		//test.su();
		//test.day();
		//test.day1();
		//test.jue();
		//test.sort();
		//test.num();
		//test.mult();
		
	var monkey = new Monkey();
		//monkey.eat();
		//console.log(monkey.eat2(1,1));
	var fat =new Fat();
		//fat.yun();
		fat.ling();
	var jie = new Jie();
		//jie.cheng();
		console.log(jie.cheng2(3,1));
})();
